package pe.gob.minam.sismon.web.util;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import javax.faces.context.FacesContext;

public final class ReadFileUtil {

	private static final String RUTA_ARCHIVO_GLOSARIO = "/WEB-INF/other/glossary.txt";
	private static final String RUTA_ARCHIVO_TIPS = "/WEB-INF/other/tips.txt";
	private static final String RUTA_ARCHIVO_MAIL_CLAVE = "/WEB-INF/other/mailRestablecerClave.txt";
	

	private ReadFileUtil() {

	}

	public static String leerArchivoGlosario() throws IOException {
		String texto = "";
		BufferedReader br = null;
		String ruta = FacesContext.getCurrentInstance().getExternalContext()
				.getRealPath(RUTA_ARCHIVO_GLOSARIO);
		try {
			br = new BufferedReader(new FileReader(ruta));
			StringBuilder sb = new StringBuilder();
			String line = br.readLine();
			while (line != null) {
				sb.append(line);
				line = br.readLine();
			}
			texto = sb.toString();
		} finally {
			br.close();
		}
		return texto;
	}

	public static String leerArchivoTips() throws IOException {
		String texto = "";
		BufferedReader br = null;
		String ruta = FacesContext.getCurrentInstance().getExternalContext()
				.getRealPath(RUTA_ARCHIVO_TIPS);
		try {
			br = new BufferedReader(new FileReader(ruta));
			StringBuilder sb = new StringBuilder();
			String line = br.readLine();
			while (line != null) {
				sb.append(line);
				line = br.readLine();
			}
			texto = sb.toString();
		} finally {
			br.close();
		}
		return texto;
	}
	
	public static String leerMailRestablecerClave(String[] arr) throws IOException {
		String texto = "";
		BufferedReader br = null;
		String ruta = FacesContext.getCurrentInstance().getExternalContext()
				.getRealPath(RUTA_ARCHIVO_MAIL_CLAVE);
		try {
			br = new BufferedReader(new FileReader(ruta));
			StringBuilder sb = new StringBuilder();
			String line = br.readLine();
			while (line != null) {
			    if(line.contains(ConstantesWeb.USUARIO_CAMBIAR)){
				line=line.replaceAll(ConstantesWeb.USUARIO_CAMBIAR, arr[0]);
			    }
			    if(line.contains(ConstantesWeb.CLAVE_CAMBIAR)){
				line=line.replaceAll(ConstantesWeb.CLAVE_CAMBIAR, arr[1]);
			    }
				sb.append(line).append("\n");
				line = br.readLine();
			}
			texto=sb.toString();
		} finally {
			br.close();
		}
		return texto;
	}

}
